Flash memory is widely used in storing digital data nowadays. It has many aspects of applications: flash memory chips can be aggregated to form a SSD to be a key part of a notebook, or a pen drive as a portable storage device; one single flash memory chip may be packaged to form a micro SD card inserted in a smartphone for recording data. Take SSD as an example. Comparing with HDD (Hard Disk Drive), SSD has advantages of shockproof, compact size, low heat radiation and fast speed of read and write. Although HDD has higher bit-to-cost ratio than SSD, the distance therebetween is getting closer. SSD is replacing HDD to be the mainstream in storage.
In SSDs or other similar storage devices, a mapping table is used to enable read/write performance. Typically, the mapping table is quite large. The full mapping table or subparts of it is used to perform read and write tasks. Hence, it is desired to store the mapping table or subparts in a DRAM module for fast response to read/write instructions. The full mapping table is stored in the flash memory units (pages or blocks) of the SSD before the DRAM module is initiated to download the mapping table or subparts of it to operate. A SSD controller is generally designed and manufactured with said DRAM module. A size of the DRAM module is usually at least 1/1000 of total storage capacity of the flash memory in the SSD. For example, if a SSD has a storage size of 512 GB, thus, a controller for the SSD should have a DRAM module not less than 512 MB. In the past, capacity of SSDs was not large. The required DRAM module is not large, either. Cost of the DRAM module is not significant. With the increase of storage capacity of the SSDs, cost of the DRAM module becomes an unavoidable issue.
The present invention is to provide a solution for settle the issue.